package com.hzlx.mesMaterialTransactions.service;

import java.util.List;
import com.hzlx.mesMaterialTransactions.domain.MesMaterialTransactions;

/**
 * MES 物料交易，记录物料入库、出库等交易全流程信息Service接口
 * 
 * @author ruoyi
 * @date 2025-07-01
 */
public interface IMesMaterialTransactionsService 
{
    /**
     * 查询MES 物料交易，记录物料入库、出库等交易全流程信息
     * 
     * @param transactionId MES 物料交易，记录物料入库、出库等交易全流程信息主键
     * @return MES 物料交易，记录物料入库、出库等交易全流程信息
     */
    public MesMaterialTransactions selectMesMaterialTransactionsByTransactionId(Long transactionId);

    /**
     * 查询MES 物料交易，记录物料入库、出库等交易全流程信息列表
     * 
     * @param mesMaterialTransactions MES 物料交易，记录物料入库、出库等交易全流程信息
     * @return MES 物料交易，记录物料入库、出库等交易全流程信息集合
     */
    public List<MesMaterialTransactions> selectMesMaterialTransactionsList(MesMaterialTransactions mesMaterialTransactions);

    /**
     * 新增MES 物料交易，记录物料入库、出库等交易全流程信息
     * 
     * @param mesMaterialTransactions MES 物料交易，记录物料入库、出库等交易全流程信息
     * @return 结果
     */
    public int insertMesMaterialTransactions(MesMaterialTransactions mesMaterialTransactions);

    /**
     * 修改MES 物料交易，记录物料入库、出库等交易全流程信息
     * 
     * @param mesMaterialTransactions MES 物料交易，记录物料入库、出库等交易全流程信息
     * @return 结果
     */
    public int updateMesMaterialTransactions(MesMaterialTransactions mesMaterialTransactions);

    /**
     * 批量删除MES 物料交易，记录物料入库、出库等交易全流程信息
     * 
     * @param transactionIds 需要删除的MES 物料交易，记录物料入库、出库等交易全流程信息主键集合
     * @return 结果
     */
    public int deleteMesMaterialTransactionsByTransactionIds(Long[] transactionIds);

    /**
     * 删除MES 物料交易，记录物料入库、出库等交易全流程信息信息
     * 
     * @param transactionId MES 物料交易，记录物料入库、出库等交易全流程信息主键
     * @return 结果
     */
    public int deleteMesMaterialTransactionsByTransactionId(Long transactionId);
}
